1. Field of the Invention
This invention relates generally to the field of wireless communications. In particular, the invention relates to searching for Global Positioning System (“GPS”) satellites with a GPS receiver.
2. Related Art
The worldwide utilization of Global Positioning System (“GPS”) devices is growing at a rapid pace. GPS devices are being utilized as stand-alone devices and as part of new integrated devices such as wireless devices that include two-way radios, portable televisions, personal communication system (“PCS”), personal digital assistants (“PDAs”), cellular telephones (also known as “mobile phones”), Bluetooth, and satellite radio receivers. An example of an integrated GPS wireless device includes the GPS enabled wireless telephones that support the “Enhanced 911” (also known as E911) requirement enacted by the United States (“U.S.”) Congress through the Federal Communication Commission (“FCC”) that requires that wireless telephones be locatable to within 50 feet once an emergency call, such as an E911, is placed by a given wireless telephone.
GPS devices are devices that receive GPS signals from a GPS constellation of satellites and in response determine the position of the GPS device on the earth. The GPS constellation of satellites is the space segment of GPS that includes an array of GPS satellites that transmit highly accurate, time-coded information that permits a GPS receiver within a GPS device to calculate its exact location in terms of latitude and longitude on the earth as well as the altitude above sea level. The U.S. GPS system (also known as “NAVSTAR”) is designed to provide a base navigation system with accuracy to within 100 meters for non-military use and greater precision for the military (with Selective Availability ON).
The GPS satellites orbiting above the earth contain transmitters, which send highly accurate timing information to the GPS receivers on earth. The fully implemented U.S. GPS system consists of 21 main operational GPS satellites plus three active spare GPS satellites. These GPS satellites are arranged in six orbits, each orbit containing three or four GPS satellites. The orbital planes form a 55° angle with the equator. The GPS satellites orbit at a height of 10,898 nautical miles (20,200 kilometers) above earth with orbital periods for each GPS satellite of approximately 12 hours.
Each of the orbiting GPS satellites contains four highly accurate atomic clocks. These atomic clocks provide precision timing pulses used to generate a unique binary code (also known as a pseudo random, “PRN,” or pseudo noise “PN” code) that is transmitted to earth. The PN code identifies the specific GPS satellite in the GPS constellation. The GPS satellite also transmits a set of digitally coded ephemeris data that completely define the precise orbit of the GPS satellite. The ephemeris data indicate where the GPS satellite is at any given time, and its location may be specified in terms of the satellite ground track in precise latitude and longitude measurements. The information in the ephemeris data is coded and transmitted from the GPS satellite providing an accurate indication of the exact position of the GPS satellite above the earth at any given time. A ground control station updates the ephemeris data of the GPS satellite once per day to ensure accuracy.
A GPS receiver configured in a GPS device is designed to pick up signals from three, four, or more GPS satellites simultaneously. The GPS receiver decodes the information and, utilizing the time and ephemeris data, calculates the approximate position of the GPS device. The GPS receiver contains a floating-point processor that performs the necessary calculations and may output a decimal display of latitude and longitude as well as altitude on the GPS device. Readings from three GPS satellites are necessary for latitude and longitude information. A fourth GPS satellite reading is required in order to compute altitude.
The location of a GPS device is usually hindered in dense environments such as downtown city blocks. A GPS receiver within the GPS device should have the capability to acquire and track the GPS satellites under the conditions that the typical user of a GPS device such as an integrated GPS and wireless telephone device will encounter. Some of these conditions include utilization of the GPS device indoors and in dense urban areas that have a limited sky view, such as in downtown areas with skyscrapers blocking the views of the normally available satellites, etc. While these environments are typically manageable for terrestrial-based wireless communications systems, they are difficult environments for a GPS device to operate in. For example, traditional “autonomous mode” GPS devices (i.e., GPS devices where the GPS receiver acquires the GPS signals from the GPS satellites, tracks the GPS satellites, and, if desired, performs navigation without any outside information being delivered to the GPS system) have problems with long Time-To-First-Fix (“TTFF”) times and, additionally, have a limited ability to acquire the GPS satellite signals under indoor or limited sky-view conditions.
Thus, many new high-sensitivity GPS receivers are generally designed to detect and track GPS signals strength that are very low and undetectable by conventional (i.e., non-high-sensitivity) GPS receivers because the signal detection involves higher integration and other complex signal processing techniques. Unfortunately, these high-sensitivity GPS receivers have problems that include locking to weak or residual GPS signals and having limited signal detection capability when supplied with improper initialization data.
High-sensitivity GPS receivers designed to detect and track very low strength GPS signals generally suffer from locking to residual GPS signals that are caused by inter-satellite cross-correlation and code and/or Doppler auto-correlation in a relatively strong signal environment because a GPS receiver designed for indoor use is capable of detecting very low power GPS signals that have a magnitude value typically below 30 dB-Hz. It is appreciated by those skilled in the art that a cross-correlation occurs when a channel in a GPS receiver is searching for a GPS signal from GPS satellite “X” but it detects a residual GPS signal from another GPS satellite “Y.” Similarly, it is appreciated that an auto-correlation occurs when a channel in a GPS receiver detects a residual GPS signal on a wrong code or Doppler frequency.
When a GPS receiver is locked to one of these residual GPS signals instead of the strong main GPS signal (also known as “a strong GPS signal”), it is known as a “false lock” and the GPS receiver is described as being “false locked.” The false lock phenomenon usually happens when the main GPS signal is strong—such as in an open sky environment. In this case, the strong main GPS signal causes the cross or auto-correlated signals to become detectable by the typical high-sensitivity GPS receiver. A false lock is detrimental to a GPS receiver since it introduces an incorrect measurement into the navigation solution of the GPS receiver, thereby causing several kilometers of error in the reported position of the GPS device. In general, the false lock phenomenon usually happens when the main GPS signal is strong, as in open sky environment, which causes the cross or auto-correlated signals to become detectable. As an example, if a strong main GPS signal has a strength magnitude value of approximately 45 dB-Hz, the typical residual GPS signals could have strength magnitude values of about 25 db-Hz and a high-sensitivity GPS receiver designed for indoor usage will generally be capable of locking to the wrong residual GPS signal and corrupting its navigation filter.
Additionally, another problem associated with false locking to a residual GPS signal occurs when a high-sensitivity GPS receiver searches for a strong GPS signal but instead locks on to a weak GPS signal when a strong GPS signal was actually available but missed by the initial search of the high-sensitivity GPS receiver. As a result, the high-sensitivity GPS receiver locks to a weak GPS signal when a strong GPS signal was available. In this case, the high-sensitivity GPS receiver may have missed the strong GPS signal for several reasons, including the situation where the strong GPS signal was not present at the time of the search but appeared either immediately or shortly after—such, as for example, a few seconds—the search, or the situation where the high-sensitivity GPS receiver simply missed detecting the strong GPS signal.
As far as having improper initialization data, generally when a GPS receiver is turned on it utilizes initialization data stored in its non-volatile memory in order to acquire the GPS satellites faster (i.e., with a lower TTFF) than it would if it did not have the initialization data, thereby consequently producing quicker position information. This type of setup is typically known as a “warm start” versus a “cold start” where the GPS receiver has no initialization data. Typically the last computed position, ephemeris/almanac data and the time kept by a real time clock of the GPS receiver stored in memory may be utilized by the GPS receiver at startup (i.e., when powered on) for a faster acquisition.
Alternatively, the GPS receiver may be initialized by an external source such as an end-to-end server/client solution such as E911 applications. In this latter case, the same kind of data may be conveyed to the GPS receiver at the time the GPS receiver is powered on.
However, a problem arises if the initialization data is wrong, unreliable or outdated. If the initialization data is incorrect, the GPS receiver will calculate the wrong position coordinates for the GPS device because the GPS receiver attempts to create a visible list of GPS satellites initially based on the initialization data. If the initialization data is wrong, the resulting visible list will also be wrong and the GPS receiver will incorrectly expect to receive GPS signals from GPS satellites that may not be physically visible (i.e., they may be below the horizon), thereby causing a very long TTFF. As an example, if a GPS receiver is turned off in one geographic location (such as in the US) and then powered on in a different geographic location (such as in Japan), the GPS receiver will at first attempt to create a visible list based on the initialization data stored from its last known position within the US. However, most GPS satellites that would have been visible to the GPS receiver at the last known location of the GPS receiver within the US will now be below the horizon and not visible to the GPS receiver in Japan.
Unfortunately, most GPS receivers will attempt to search for GPS satellites based on their created visible lists for expected strong GPS satellites (i.e., the GPS satellites that are expected to be present at elevations that provide strong GPS signals). Assuming no fake (also known as “false”) locks, if a GPS receiver does not find any strong GPS signals, the GPS receiver will begin to search for weak satellites (i.e., the GPS satellites that are expected to be present at elevations that provide weaker GPS signals). A GPS receiver may continue to perform these searches for quite some time before exhausting the search possibilities of the incorrect visible list. Once the visible list search possibilities are exhausted, the GPS receiver will then search the whole list of 32 possible satellites. It is appreciated that this takes too long for most practical applications.
In the case of an erroneous fake lock, there is a possibility that the GPS receiver may lock on to strong GPS satellites that it believes to be weak GPS satellites based on its incorrect visible list because it receives GPS signals from strong GPS satellites that it does not expect (since it is looking for weak GPS satellites, based on the incorrect visible list, that are not present). This situation typically leads to a cross-correlation problem because the GPS receiver is locked to a GPS signal that it thinks is a weak GPS signal from a GPS satellite that is indicated in its incorrect visible list, when in reality the GPS receiver is locked to a strong GPS signal of a GPS satellite that is somewhere else.
Attempts at solving these problems in the past have included utilizing time-out solutions, extensive repeat code and Doppler searches to validate an initial lock to a GPS satellite, and measurement rejection using the RAIM algorithm. However, each of these approaches has significant drawbacks and limitations that make them at best sub-optimal solutions. For example, the approach in the time-out solution is that if the GPS receiver cannot track GPS satellites within a fixed period of time, a cold start initialization can be performed. However, the problem with this method is loss of sensitivity and longer TTFF for an indoor GPS application. In an extensive repeated code and Doppler search to validate an initial lock to satellite approach, the problem is that the process is time consuming and can cause very long TTFF. Also this approach cannot solve the false lock problem due to cross-correlation. Finally, in the measurement rejection by using the RAIM algorithm approach, the approach only addresses the effect and not the cause of the problem. As such, in the case of multiple-channel false lock situations the RAIM method is ineffective.
Therefore, there is a need for a method and system that allows a GPS receiver that is designed to detect and track low GPS signals to operate properly in high GPS signal environments while at the same time allowing operation in low GPS signal environments where stored initialization data may be wrong or unreliable.